package cn.mill.common;

import java.lang.annotation.Annotation;
import java.lang.reflect.Method;
import java.lang.reflect.Type;
import java.util.Map;

import cn.mill.common.data.Item;

public interface Context {
	public String getMapping();
	
	public String getTip();
	
	public Method getMethod();
	
	public Node getNode();
	
	public void setNode(Node node);
	
	public Object[] getParameters();
	
	public Class<?>[] getParameterTypes();
	
	public Annotation[][] getParameterAnnotations();
	
	public Annotation[] getMethodAnnotations();
	
	public Map<String, Item> getAttachments();
	
	public void addAttachments(String key, Item item);
	
	public Type getReturnType();
	
	public Listener getListener();
	
	public void setListener(Listener listener);
}
